package com.demarc.pesquisas.negocio.service.entrevista;

import java.util.List;

import org.primefaces.model.SortOrder;

import com.demarc.pesquisas.infraestrutura.persistencia.ResultadoPaginado;
import com.demarc.pesquisas.negocio.dto.DetalheEntrevistaDTO;
import com.demarc.pesquisas.negocio.dto.EntrevistaDTO;
import com.demarc.pesquisas.negocio.dto.RelatorioAgrupamentoLocalidadeDTO;
import com.demarc.pesquisas.negocio.dto.RelatorioFiltroDTO;
import com.demarc.pesquisas.negocio.entidade.entrevista.Entrevista;
import com.demarc.pesquisas.negocio.entidade.entrevista.EntrevistaFiltro;
import com.demarc.pesquisas.negocio.entidade.pesquisa.Pesquisa;
import com.demarc.pesquisas.negocio.service.IService;

public interface IEntrevistaService extends IService<Entrevista, Long> {

    ResultadoPaginado<EntrevistaDTO> consultar(EntrevistaFiltro entrevistaFiltro, int first,
            int pageSize, String sortField, SortOrder sortOrder);

    List<String> listarLocalidades(Pesquisa pesquisa);

    List<RelatorioAgrupamentoLocalidadeDTO> consultarRelatorioTotalizador(RelatorioFiltroDTO filtro);

    List<DetalheEntrevistaDTO> consultarRelatorioDetalhes(RelatorioFiltroDTO filtro);
}
